home *** CD-ROM | disk | FTP | other *** search
-
-
-
- EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777)))) EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777))))
-
-
-
- NNNNAAAAMMMMEEEE
- ethernet - Ethernet controllers
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- IRIX supports local-area networking with Ethernet. The Ethernet protocol
- is supported with a hardware controller and a kernel driver. Though the
- controllers are different among the various hardware platforms, their
- drivers provide the same programming interface to networking routines.
-
- Most ethernet controllers are named using the following convention: the
- prefix is `e' and the suffix ('N') is the controller unit number.
- However, not all drivers follow this, as shown below:
-
- Name Type Model
- ec0 on-board Indigo, Indigo2, Indy, CHALLENGE S/M (10baseT)
- ec0 on-board O2 (10/100baseTX)
- ec1 PCI O2 (10/100baseTX)
- et0 on-board POWER Series, Challenge/Onyx systems (10baseT)
- etN HIO POWER Series, Challenge/Onyx systems (10baseT)
- ef0 on-board OCTANE, Origin Series Fast Ethernet (10/100baseTX)
- efN XIO OCTANE, Origin Series Fast Ethernet (10/100baseTX)
- epN HIO CHALLENGE/Onyx, POWER CHALLENGE/POWER Onyx (10baseT)
- fxpN VME CHALLENGE/Onyx, POWER CHALLENGE/POWER Onyx (10baseT)
- gfeN GIO Indy, Indigo, Indigo2, CHALLENGE S (10/100baseTX)
- vfeN VME CHALLENGE/Onyx, POWER CHALLENGE/POWER Onyx (10/100baseTX)
-
- Depending on the model, several Ethernet controllers are supported,
- allowing the system to act as a gateway among different local networks.
-
- The Ethernet boards are initialized during system startup from
- /etc/init.d/network (see _n_e_t_w_o_r_k(1M) for details).
-
- IRIX implements the Ethernet encapsulation format. Each packet has a
- 14-byte header, as defined in the #include file <_n_e_t_i_n_e_t/_i_f__e_t_h_e_r._h>:
-
- struct ether_header {
- u_char ether_dhost[6]; /* destination address */
- u_char ether_shost[6]; /* source address */
- u_short ether_type; /* packet type */
- };
-
-
- The packet type determines which kernel protocol routine is called to
- process the packet data. Examples of common packet types are IP, ARP,
- and DECnet.
-
- On systems with 10/100baseTX capability, auto-negotiation is enabled by
- default; through auto-negotiation, the ethernet transceiver will select
- the highest performance common connection technology between a local host
- and a remote host. For the OCTANE and Origin systems, refer to
- /_v_a_r/_s_y_s_g_e_n/_m_a_s_t_e_r._d/_i_f__e_f if the manual selection of ethernet speed and
- duplex mode is desired. For the O2 on-board ethernet, the PROM variable
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777)))) EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777))))
-
-
-
- 'ec0mode' can be used to select the desired speed (legal values are: 10,
- 100, f100, and h100). For the O2 add-on ethernet, refer to
- /_v_a_r/_s_y_s_g_e_n/_m_a_s_t_e_r._d/_i_f__e_c_f if the manual selection of ethernet speed and
- duplex mode is desired.
-
- To disable auto-negotiation and force a specific speed/duplex, you can
- modify the /_v_a_r/_s_y_s_g_e_n/_m_a_s_t_e_r._d/_i_f__e_f file with the following changes.
- As the following example shows, you must specify _x_x_x as a valid phy type,
- specify _y_y_y as a valid speed/duplex mode, and remove the #ifdef/#endif
- lines.
-
- In addition, you must set the ethernet unit number to -1 to activate the
- chipset features on all interfaces (this is the default in this file, as
- shown in the following example), or set it to a specific interface number
- that will affect only that interface.
-
- The example is as follows:
-
- To lock down the ef0 interface on an Origin 2000 system to 100mbit/full-
- duplex, specify the following:
-
- { 1, PHY_DP83840, -1, 0, 0xffff, F100 },
-
- To lock down the ef1 interface on an Octane system to 10mbit/half-duplex,
- specify the following:
-
- { 2, PHY_ICS1890, -1, 0, 0xffff, H10 },
-
- You must also remove the #ifdef/#endif lines.
-
- */
- #define F100 0x2100 /* 100mbps full duplex mode */
- #define H100 0x2000 /* 100mbps half duplex mode */
- #define F10 0x0100 /* 10mbps full duplex mode */
- #define H10 0x0000 /* 10mbps half duplex mode */
-
- struct phyerrata {
- int unit;
- __uint32_t type;
- short rev;
- unsigned short reg, mask, val;
- } ef_phyerrata[] = {
- { -1, PHY_DP83840, -1, 23, 1 << 5, 1 << 5 }, /* bypass link disconnect */
- { -1, PHY_ICS1890, -1, 18, 1 << 5, 1 << 5 }, /* link loss inhibit */
- #ifdef notdef
- { -1, xxx, -1, 0, 0xffff, yyy },
- #endif
- { -1, 0, 0, 0, 0, 0},
- };
-
-
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777)))) EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777))))
-
-
-
- Auto-negotiation for the gigabit Ethernet 1000Base-SX differs from auto-
- negotiation for IEEE 802.3u 100BaseT. 100BaseT uses the National
- Semiconductor NWay (TM) Auto-Negotiation standard. Most of the 10/100
- Ethernet controller chips include N-Way Auto-Negotiation.
-
- There is no auto-negotiation standard for 1000Base-SX; this may require
- that auto-negotiation be disabled. To disable auto-negotiation, you must
- use the following commands:
-
- ifconfig eg<n> down
- egconfig -l eg<n>
- ifconfig eg<n> up
-
-
- If you need to reenable auto-negotiation, you must reboot the system
- because the auto-negotiation status of a system cannot be checked.
-
- The default for auto-negotiation is to be enabled on bootup. If you want
- auto-negotiation to be disabled by default, you must create the
- /_e_t_c/_c_o_n_f_i_g/_e_g<_n>._o_p_t_i_o_n_s file and add the -l option (letter l).
-
- Whether or not auto-negotiation is enabled or disabled, the speed and
- mode will always be 1,000 Mbits/second, full duplex.
-
- DDDDIIIIAAAAGGGGNNNNOOOOSSSSTTTTIIIICCCCSSSS
- Various error messages are printed by the kernel when a problem is
- encountered. The message is preceded by the controller name, for
- example, et0. Serious errors are flagged with a dagger (|-). If they
- occur repeatedly, contact your product support service for assistance.
- By default, many non-serious errors will not cause a diagnostic message
- to be displayed on the console. To enable all driver diag messages, use
- the command iiiiffffccccoooonnnnffffiiiigggg xxxxxxxxxxxx ddddeeeebbbbuuuugggg where xxx is the ethernet network
- interface name.
-
- The following error messages are common to all controllers:
-
- packet too small (length = X)
- packet too large (length = X)
- The controller received a packet that was smaller than the
- minimum Ethernet packet size of 60 bytes or larger than the
- maximum of 1514. This problem is caused by another machine with
- a bad Ethernet controller or transceiver.
-
- stray interrupt
- early interrupt
- The controller interrupted the kernel before the device was
- initialized. This error is innocuous; it occurs after booting a
- kernel over the network from the PROM monitor.
-
- died and restarted
- The controller failed to respond after a certain amount of time
- and the driver had to reset it.
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-
-
-
- EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777)))) EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777))))
-
-
-
- cannot handle address family
- This message indicates an error in the kernel protocol handling
- routines.|-
-
- The following messages are specific to the ec and et controllers.
-
- no carrier: check Ethernet cable
- Carrier was not detected when attempting to transmit, probably
- because the Ethernet cable is unplugged from the machine (but
- possibly due to a broken transceiver, transceiver cable, or
- 10baseT hub).
-
- late collision
- The controller tried to transmit a packet but received a late
- collision signal from another machine. Usually indicates a
- problem in the Ethernet cable layout.
-
- transmit buffer error
- receive buffer error
- transmit underflow
- receive packet overflow
- The controller ran out of memory when trying to transmit or
- receive a packet.|-
-
- unknown interrupt
- The controller interrupted the kernel but the reason for the
- interrupt is missing.|-
-
- babbling
- The kernel tried to transmit a packet larger than the maximum
- size.|-
-
- machine has bad Ethernet address: x:x:x:x:x:x
- The Ethernet address obtained from non-volatile RAM during
- controller initialization was corrupted.|-
-
- memory timeout
- The LANCE Ethernet chip failed to access its local memory.|-
-
- Counts of Ethernet input and output errors can be displayed with the
- command _n_e_t_s_t_a_t -_i (see _n_e_t_s_t_a_t(1M)). Typically, output errors and
- collisions occur due to mismatched controller and transceiver
- configurations. Input error statistics include counts of the errors
- listed above and counts of protocol input queue overflows.
-
- CCCCoooonnnnffffiiiigggguuuurrrriiiinnnngggg aaaaddddddddiiiittttiiiioooonnnnaaaallll eeeetttthhhheeeerrrrnnnneeeetttt ppppoooorrrrttttssss oooonnnn CCCChhhhaaaalllllllleeeennnnggggeeee////OOOOnnnnyyyyxxxx LLLL////XXXXLLLL ssssyyyysssstttteeeemmmmssss
- Onyx and Challenge L/XL systems only enable the ethernet on the master
- IO4 by default. To activate the ethernet interfaces on other IO4 boards,
- a vector line must be added to ////vvvvaaaarrrr////ssssyyyyssssggggeeeennnn////ssssyyyysssstttteeeemmmm////iiiirrrriiiixxxx....ssssmmmm. The following
- vector line configures the ethernet interface on the IO4 in slot 13 as
- et1:
-
-
-
-
- PPPPaaaaggggeeee 4444
-
-
-
-
-
-
- EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777)))) EEEETTTTHHHHEEEERRRRNNNNEEEETTTT((((7777))))
-
-
-
- VECTOR: bustype=EPC module=epcether unit=1 slot=13
-
- The first two options (bustype and module) are mandatory and tell lboot
- that you're configuring an ethernet interface. The "unit" option
- specifies the ethernet unit number. The unit number must be greater than
- 0. The "slot" option specifies the slot of the IO4 whose ethernet
- interface is being configured as et1.
-
- After updating the iiiirrrriiiixxxx....ssssmmmm file, autoconfig(1m) should be executed to
- reconfigure the kernel. To make the new interface available, reboot the
- machine with the new kernel.
-
- SSSSEEEEEEEE AAAALLLLSSSSOOOO
- ioconfig(1M), netstat(1M), network(1M), socket(2), drain(7P), ip(7P),
- raw(7P), snoop(7P)
-
- NNNNOOOOTTTTEEEE
- IEEE 802.3 Ethernet encapsulation is not currently supported. Some
- Ethernet controllers will support IEEE 802.3 and Ethernet v.1/v.2
- electrical specifications. Contact your product support service for more
- information.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 5555
-
-
-
-